package interfasesGenerales;

import mapas.Region;
import civilizacion.Civilizacion;

/**@author Grupo 2, Algoritmos y programacion 3, Catedra Fontela<br>1er cuat 2007
 * <br>Esta interfase sirve para que la clase que lo implemente pueda ser atacada.
 */
public interface Atacable {
	/**
	 * @param cantidad Cantidad a disminuirle a la vida
	 */
	public void disminuirVida(int cantidad);
	/**
	 * @return True si esta vivo, false en caso contrario.
	 */
	public boolean estaVivo();
	/**
	 * Intenta bloquear un ataque.
	 * @return True si pudo bloquear el ataque, false en caso contrario.
	 */
	public boolean defender();
	/**
	 * @return Defensa del objeto
	 */
	public int getDefensa();
	/**
	 * @return Referencia a la region donde se encuentra el objeto
	 */
	public Region getRegion();
	/**
	 * @return Referencia a la civilizacin a la que pertenece el objeto
	 */
	public Civilizacion getCivilizacion();
}
